package com.heima.wemedia.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.common.dtos.ResponseResult;
import com.heima.model.media.dtos.NewsAuthDto;
import com.heima.model.media.dtos.WmNewsDto;
import com.heima.model.media.dtos.WmNewsPageReqDto;
import com.heima.model.media.pojos.WmNews;

import java.util.List;

/**
 * <p>
 * 自媒体图文内容信息表 服务类
 * </p>
 *
 * @author itheima
 */
public interface WmNewsService extends IService<WmNews> {
    /**
     * 分页带条件查询自媒体文章列表<
     *
     * @param dto
     * @return
     */
    public ResponseResult findAll(WmNewsPageReqDto dto);

    /**
     * 自媒体文章-发布、修改、保存草稿
     *
     * @param wmNewsDto
     * @param isSubmit  1为提交，0为草稿
     * @return
     */
    public ResponseResult submitNews(WmNewsDto wmNewsDto, Short isSubmit);

    /**
     * 根据id查询文章
     *
     * @param id
     * @return
     */
    public ResponseResult findWmNewsById(Integer id);

    /**
     * 根据id删除文章
     *
     * @param id
     * @return
     */
    public ResponseResult delNewsById(Integer id);

    /**
     * 文章上下架操作
     *
     * @param wmNewsDto
     * @return
     */
    public ResponseResult downOrUp(WmNewsDto wmNewsDto);

    /**
     * 查询需要发布文章的id列表
     *
     * @return
     */
    public List<Integer> findRelease();

    /**
     * 查询内容审核列表
     *
     * @param newsAuthDto
     * @return
     */
    public ResponseResult findList(NewsAuthDto newsAuthDto);

    /**
     * 查询文章详情
     * @param id
     * @return
     */
    public ResponseResult findWmNewsVoById(Integer id);

    /**
     * 人工审核文章，通过4和驳回2
     * @param newsAuthDto
     * @param status
     * @return
     */
    public ResponseResult updateStatus(NewsAuthDto newsAuthDto,Integer status);
}
